Iterative two dimensional equalization of orthogonal time frequency space modulated signals

ABSTRACT

An iterative two dimension equalizer usable in a receiver of orthogonal time frequency space (OTFS) modulated signals is described. In one configuration of the equalizer, a forward path generates, from received time-frequency domain samples and a channel estimate, estimates of data bits and likelihood numbers associated with the estimates of data bits, generated by delay-Doppler domain processing. In the feedback direction, the estimates of data bits are used to generate symbol estimates and autocorrelation matrix estimate in the time domain. In another configuration, a soft symbol mapper is used in the feedback direction for directly generating the feedback input symbol estimate without having to generate estimates of data bits.

CROSS-REFERENCE TO RELATED APPLICATIONS

This patent document is a continuation of U.S. patent application Ser. No. 16/148,922, entitled “ITERATIVE TWO DIMENSIONAL EQUALIZATION OF ORTHOGONAL TIME FREQUENCY SPACE MODULATED SIGNALS”, filed on Oct. 1, 2018, which is a continuation of PCT Application No. PCT/US2017/025578, entitled “ITERATIVE TWO DIMENSIONAL EQUALIZATION OF ORTHOGONAL TIME FREQUENCY SPACE MODULATED SIGNALS”, filed on Mar. 31, 2017, which claims priority to U.S. Provisional Application Ser. No. 62/317,420, entitled “ITERATIVE TWO DIMENSIONAL EQUALIZATION OF ORTHOGONAL TIME FREQUENCY SPACE MODULATED SIGNALS”, filed on Apr. 1, 2016. The entire contents of the aforementioned patent applications are incorporated by reference herein.

TECHNICAL FIELD

The present document relates to wireless communication, and more particularly, to receiver-side processing of orthogonal time frequency space (OTFS) domain modulated signals.

BACKGROUND

Due to an explosive growth in the number of wireless user devices and the amount of wireless data that these devices can generate or consume, current wireless communication networks are fast running out of bandwidth to accommodate such a high growth in data traffic and provide high quality of service to users.

Various efforts are underway in the telecommunication industry to come up with next generation of wireless technologies that can keep up with the demand on performance of wireless devices and networks.

SUMMARY

This document discloses receiver-side techniques for iterative two-dimensional channel equalizer in which input time-frequency domain train of symbols and channel estimates are, in a feed forward path, transformed into delay-Doppler domain and data bits are extracted in the delay-Doppler domain. In the feedback path, the data bit estimates are transformed using a symplectic Fourier transform into time-frequency domain to generate symbol estimates for the next iteration.

In one example aspect, a wireless communication method for recovering information bits from a received signal, by performing iterative two dimensional equalization is disclosed. The method includes receiving, at an iterative equalizer, iteration inputs including a two dimensional estimate of a wireless channel over which the received signal is received, a stream of received symbols, a symbol estimate from a previous iteration, an input autocorrelation matrix estimate from the previous iteration, computing, from the iteration inputs, a Wiener estimate of the stream of received symbols, transforming the Wiener estimate to symbol estimates a two dimensional delay-Doppler grid using a two-dimensional symplectic Fourier transform, estimating likelihoods of the symbol estimates in the two dimensional delay-Doppler grid, and generating estimates of data from the likelihoods.

In another example aspect, a wireless communication method for recovering information bits from a received signal, by performing iterative two dimensional equalization is disclosed. The method includes receiving, at an iterative equalizer, iteration inputs including a two dimensional estimate of a wireless channel over which the received signal is received, a stream of received symbols, a symbol estimate from a previous iteration, an input autocorrelation matrix estimate from the previous iteration, computing, from the iteration inputs, a Wiener estimate of the stream of received symbols, transforming the Wiener estimate to symbol estimates a two dimensional delay-Doppler grid using a two-dimensional symplectic Fourier transform, and processing in a feedback direction, by generating a symbol estimate and an input autocorrelation matrix estimate for a next iteration.

These, and other, features are described in this document.

DESCRIPTION OF THE DRAWINGS

Drawings described herein are used to provide a further understanding and constitute a part of this application. Example embodiments and illustrations thereof are used to explain the technology rather than limiting its scope.

FIG. 1 shows an example communication network.

FIG. 2 shows a flowchart of an example wireless communication reception method.

FIG. 3 shows a flowchart of another example wireless communication reception method.

FIG. 4 shows an example of a wireless transceiver apparatus.

FIG. 5 is a block diagram showing an example 2-D iterative equalizer.

FIG. 6 is a block diagram showing an example of a self-iterative 2-D equalizer.

DETAILED DESCRIPTION

To make the purposes, technical solutions and advantages of this disclosure more apparent, various embodiments are described in detail below with reference to the drawings. Unless otherwise noted, embodiments and features in embodiments of the present document may be combined with each other.

The present-day wireless technologies are expected to fall short in meeting the rising demand in wireless communications. Many industry organizations have started the efforts to standardize next generation of wireless signal interoperability standards. The 5th Generation (5G) effort by the 3rd Generation Partnership Project (3GPP) is one such example and is used throughout the document for the sake of explanation. The disclosed technique could be, however, used in other wireless networks and systems.

Section headings are used in the present document, including the appendices, to improve readability of the description and do not in any way limit the discussion to the respective sections only.

FIG. 1 shows an example communication network 100 in which the disclosed technologies can be implemented. The network 100 may include a base station transmitter that transmits wireless signals s(t) (downlink signals) to one or more receivers 102, the received signal being denoted as r(t), which may be located in a variety of locations, including inside or outside a building and in a moving vehicle. The receivers may transmit uplink transmissions to the base station, typically located near the wireless transmitter. The technology described herein may be implemented at a receiver 102, or in the base station.

A 2-D equalizer may be used to extract data bits that are modulated on symbols received via OTFS modulation.

1. Introduction

A system with N transmit antennas and M receives antennas, is used to pass information over a multipath channel. Information bits, b, are encoded into coded bits, c, using an Forward Error Correction (FEC) code (such as convolutional code, turbo code or LDPC code). These coded bits are grouped into groups of q bits, optionally interleaved and mapped to symbols x in a finite constellation Ω (such as 2^(q)-QAM) multiplexed on a grid on the 2-D Delay Doppler grid. These symbols are transformed by a 2-D Inverse Symplectic Fourier transform to symbols X multiplexed on a reciprocal grid on the time frequency plane. These symbols are OFDM modulated and transmitted over the N antennas. The signal, received in M antennas, is OFDM demodulated and processed as a 2-D Time-Frequency grid in the receiver.

In the 2-D Time-Frequency grid, the channel equation can be written individually for each symbol (or time-frequency point) indexed by (i,j) as Y _(M×1) ^((i,j)) =H _(M×N) ^((i,j)) ·X _(N×1) ^((i,j)) +W _(M×1) ^((i,j))  (1)

where W_(M×1) ^((i,j)) represent a vector of AWGN samples with expectation zero and variance R_(W). The 2-D equalizer computes estimations of the transmitted symbols {circumflex over (x)} from the received samples Y, the channel estimations H and the noise variance R_(W). In a non-iterative receiver, the estimated samples are transformed to the Delay-Doppler domain via a 2-D Symplectic Fourier transform and then converted to bit likelihoods, which are passed to FEC decoder to generate estimates, {circumflex over (b)}, on the information bits.

2. Iterative 2-D Equalizer

FIG. 5 is a block diagram of an example embodiment of an iterative 2-D equalizer 501. The 2-D Iterative equalizer, illustrated in FIG. 5, iterates between the 2-D equalizer 503 and the FEC MAP decoder 505, by passing information from one to the other. After several iterations, the MAP decoder outputs estimation on the information bits. In various embodiments, the iteration termination criteria may be based on a total number of iterations, meeting, but not exceeding, a time budget for the iterative process, the improvement in successive iterations falling below a threshold, and so on.

2.1 Example Embodiments of the 2-D Equalizer (503)

In some embodiments, the 2-D equalizer may be implemented as an affine MMSE equalizer, computing the Wiener estimator of X {circumflex over (X)}=CY+(I−CH) X   (2)

where C=R_(XY)R_(Y) ⁻¹ and I is the identity matrix. Note that C is a function of R_(X) and R_(W). For the first iteration there is no prior information on the symbols of X, therefore we set X=0 and R_(X)=I. The 2-D equalizer also computes the variance of the estimation error, denoted as R_(E).

2.2 2-D SFFT (507)

The estimated symbols and error variances, {circumflex over (X)} and R_(E) respectively, are transformed from the 2-D Time-Frequency grid to the 2-D Delay-Doppler grid via a 2-D Symplectic Fourier transform to {circumflex over (x)} and R_(e) respectively.

2.3 Likelihoods (509)

Likelihoods for the coded bits L_(E)({circumflex over (x)}), are computed from the symbols {circumflex over (x)}. Gaussian distribution may be assumed for {circumflex over (x)} and the likelihoods can be derived from it. The probabilities for this case are

$\begin{matrix} {{P\left( {{\hat{x}❘x} = \omega} \right)} \propto e^{{- \frac{1}{R_{Z}}}{({\hat{x} - {\mu{({\omega,A})}}})}^{2}}} & (3) \end{matrix}$

where ωϵΩ is a constellation symbol and A=1−R _(e) R _(X) ⁻¹ R _(Z) =AR _(e) μ(ω,A)=ωA+(1−A) x   (4)

Note that x is defined in equation (7). For each symbols, the extrinsic coded bits log likelihoods ratio (LLR) can be derived as

$\begin{matrix} {{L_{E}\left( \hat{x} \right)}_{i} = {\log\left( \frac{\sum\limits_{{\omega:{s{(\omega)}}_{i}} = 1}{{P\left( {{\hat{x}❘x} = \omega} \right)} \cdot {\prod_{j \neq i}{P(\omega)}_{j}}}}{\sum\limits_{{\omega:{{s{(\omega)}}i}} = 0}{{P\left( {{\hat{x}❘x} = \omega} \right)} \cdot {\prod_{j \neq i}\;{P(\omega)}_{j}}}} \right)}} & (5) \end{matrix}$

where i,j=0, . . . , q−1, s(ω) is the constellation bits label that is associated with the constellation symbol ω and P(ω)_(j) is defined in equation (6).

2.4 Deinterleaver (511)

The deinterleaver permutes the likelihoods L_(E)({circumflex over (x)}) to L(C). These likelihoods will be used as a priori information for the MAP decoder. In some implementations this deinterleaver might be optional.

2.5 MAP Decoder (505)

The Maximum A Posteriori decoder computes the a posteriori probabilities (APP's) of the information bits and also the extrinsic probabilities for the coded bits, which when using LLRs, are the APP's minus the a priori inputs.

2.6 Interleaver (513)

The interleaver permutes the likelihoods L_(D)(C) to L({circumflex over (x)}). These likelihoods will be used as a priori information for the MAP decoder. Note that in some implementations this interleaver might be optional.

2.7 Symbol Mapper (515)

The symbol mapper estimates the probabilities of each constellation symbol ωϵΩ from the likelihoods values L({circumflex over (x)}):

$\begin{matrix} {{{{P(\omega)}j} \cong {\frac{1}{2}\left( {1 + {\left( {{2 \cdot {s(\omega)}_{j}} - 1} \right) \cdot {\tanh\left( \frac{{L\left( \hat{x} \right)}_{j}}{2} \right)}}} \right)}}{{P(\omega)} \cong {\prod\limits_{j = 0}^{q - 1}\;{P(\omega)}_{j}}}} & (6) \end{matrix}$

These probabilities are used for computing the expectation of the constellation and the variance:

$\begin{matrix} {{\overset{\_}{x} = {\sum\limits_{i = 0}^{q - 1}{\omega \cdot {P(\omega)}}}}{R_{x} = {{\sum\limits_{i = 0}^{q - 1}{{\omega\omega}^{H}{P(\omega)}}} - {\overset{\_}{x}{\overset{\_}{x}}^{H}}}}} & (7) \end{matrix}$

2.8 2-D SFFT⁻¹ (517)

The 2-D Delay-Doppler domain symbols' expectation and variance x and R_(X) are transformed to X and R_(X) in the 2-D Time-Frequency domain using a 2-D Inverse Symplectic Fourier transform to transform from the delay-Doppler domain to the Time-Frequency domain. These are used as priors to the 2-D Equalizer in the next iteration. In some embodiments, the 2-D transforms used by operation 507 and 517 may be swapped. In other words, an inverse SFFT may be used in the operation 507, while an SFFT may be used in the operation 517.

In some embodiments, the iterative 2-D Equalizer may be operated so that the receiver gets side information about some resource elements in the time-frequency grid that have been “erased” (e.g., not transmitted, or not useable) and the receiver can ignore them. The receiver may skip equalization for these resources and just uses directly the prior estimates as outputs for the equalizer. In this case, Eq (2) simply becomes for these resources: {circumflex over (X)}=X.

3. Self-Iterative 2-D Equalizer (600)

In the scheme 600, shown in FIG. 6, the 2-D equalizer 503 generates symbols estimations {circumflex over (x)} and R_(e) in the 2-D Delay-Doppler domain in a similar way to the one described in the previous section. However, these estimates are fed directly to the soft symbol mapper 615 to generate along with 2-D inverse Symplectic Fourier transform 517, new priors for the 2-D equalizer 503. After a number of iterations, with termination criteria described as before, these estimations are converted to coded bits likelihoods and passed to the FEC decoder 605 to generate estimation of the information bits.

As depicted in the flowchart of FIG. 2, a wireless communication method 200 for recovering information bits from a received signal, by performing iterative two dimensional equalization includes receiving (202), at an iterative equalizer, iteration inputs including a two dimensional estimate of a wireless channel over which the received signal is received, a stream of received symbols, a symbol estimate from a previous iteration, an input autocorrelation matrix estimate from the previous iteration, computing (204), from the iteration inputs, a Wiener estimate of the stream of received symbols, transforming (206) the Wiener estimate to symbol estimates a two dimensional delay-Doppler grid using a two-dimensional symplectic Fourier transform, which may be a fast SFFT or a fast SFFT⁻¹, estimating (208) likelihoods of the symbol estimates in the two dimensional delay-Doppler grid, and generating (210) estimates of data from the likelihoods. Various embodiments and options are further described in the description associated with FIG. 5. For example, as described with respect to operations 507 and 517, in some embodiments, two-dimensional symplectic Fourier transforms that are inverse of each other may be used in these operations. In other words, 507 may correspond to an SFFT while 517 may correspond to an inverse SFFT or vice versa.

In some embodiments the generating the estimate may include deinterleaving the likelihoods and performing error correction. As depicted in the example embodiment in FIG. 5, in some embodiments, the feedback direction processing may include generating a symbol estimate and an input autocorrelation matrix estimate for a next iteration of the method 200. The processing in the feedback direction may include performing soft symbol mapping using the likelihoods resulting in intermediate symbol estimates and an intermediate autocorrelation estimate, and generating the symbol estimate and the input autocorrelation matrix estimate by transforming, using an inverse of the two-dimensional symplectic Fourier transform, the intermediate symbol estimates and the intermediate autocorrelation estimate. In various embodiments, the two-dimensional symplectic Fourier transform may be SFFT or SFFT⁻¹.

In some embodiments, the receiver that implements the method 200 may get side information about some resource elements in the time-frequency grid that have been “erased” (not transmitted, or not useable) and the receiver can ignore them. The receiver may then skip the equalization for them and just uses directly the prior estimates as outputs for the equalizer. In this case, Eq (2) simply becomes for these resources: {circumflex over (X)}=X.

FIG. 3 illustrates a flowchart example for a wireless communication method 300 for recovering information bits from a received signal, by performing iterative two dimensional equalization is disclosed. The method 300 includes receiving (302), at an iterative equalizer, iteration inputs including a two dimensional estimate of a wireless channel over which the received signal is received, a stream of received symbols, a symbol estimate from a previous iteration, an input autocorrelation matrix estimate from the previous iteration, computing (304), from the iteration inputs, a Wiener estimate of the stream of received symbols, transforming (306) the Wiener estimate to symbol estimates a two dimensional delay-Doppler grid using a two-dimensional symplectic Fourier transform, and processing (308) in a feedback direction, by generating a symbol estimate and an input autocorrelation matrix estimate for a next iteration. Various embodiments and options are further described in the description associated with FIG. 6.

FIG. 4 shows an example of a wireless transceiver apparatus 500. The apparatus 500 may be used to implement method 200 or 300. The apparatus 500 includes a processor 502, a memory 504 that stores processor-executable instructions and data during computations performed by the processor. The apparatus 500 includes reception and/or transmission circuitry 506, e.g., including radio frequency operations for receiving or transmitting signals.

It will be appreciated that techniques for wireless data reception are disclosed by performing iterative 2D channel equalization in the delay-Doppler domain.

The disclosed and other embodiments, modules and the functional operations described in this document can be implemented in digital electronic circuitry, or in computer software, firmware, or hardware, including the structures disclosed in this document and their structural equivalents, or in combinations of one or more of them. The disclosed and other embodiments can be implemented as one or more computer program products, i.e., one or more modules of computer program instructions encoded on a computer readable medium for execution by, or to control the operation of, data processing apparatus. The computer readable medium can be a machine-readable storage device, a machine-readable storage substrate, a memory device, a composition of matter effecting a machine-readable propagated signal, or a combination of one or more them. The term “data processing apparatus” encompasses all apparatus, devices, and machines for processing data, including by way of example a programmable processor, a computer, or multiple processors or computers. The apparatus can include, in addition to hardware, code that creates an execution environment for the computer program in question, e.g., code that constitutes processor firmware, a protocol stack, a database management system, an operating system, or a combination of one or more of them. A propagated signal is an artificially generated signal, e.g., a machine-generated electrical, optical, or electromagnetic signal, that is generated to encode information for transmission to suitable receiver apparatus.

A computer program (also known as a program, software, software application, script, or code) can be written in any form of programming language, including compiled or interpreted languages, and it can be deployed in any form, including as a standalone program or as a module, component, subroutine, or other unit suitable for use in a computing environment. A computer program does not necessarily correspond to a file in a file system. A program can be stored in a portion of a file that holds other programs or data (e.g., one or more scripts stored in a markup language document), in a single file dedicated to the program in question, or in multiple coordinated files (e.g., files that store one or more modules, sub programs, or portions of code). A computer program can be deployed to be executed on one computer or on multiple computers that are located at one site or distributed across multiple sites and interconnected by a communication network.

The processes and logic flows described in this document can be performed by one or more programmable processors executing one or more computer programs to perform functions by operating on input data and generating output. The processes and logic flows can also be performed by, and apparatus can also be implemented as, special purpose logic circuitry, e.g., an FPGA (field programmable gate array) or an ASIC (application specific integrated circuit).

Processors suitable for the execution of a computer program include, by way of example, both general and special purpose microprocessors, and any one or more processors of any kind of digital computer. Generally, a processor will receive instructions and data from a read only memory or a random access memory or both. The essential elements of a computer are a processor for performing instructions and one or more memory devices for storing instructions and data. Generally, a computer will also include, or be operatively coupled to receive data from or transfer data to, or both, one or more mass storage devices for storing data, e.g., magnetic, magneto optical disks, or optical disks. However, a computer need not have such devices. Computer readable media suitable for storing computer program instructions and data include all forms of non-volatile memory, media and memory devices, including by way of example semiconductor memory devices, e.g., EPROM, EEPROM, and flash memory devices; magnetic disks, e.g., internal hard disks or removable disks; magneto optical disks; and CD ROM and DVD-ROM disks. The processor and the memory can be supplemented by, or incorporated in, special purpose logic circuitry.

While this patent document contains many specifics, these should not be construed as limitations on the scope of an invention that is claimed or of what may be claimed, but rather as descriptions of features specific to particular embodiments. Certain features that are described in this document in the context of separate embodiments can also be implemented in combination in a single embodiment. Conversely, various features that are described in the context of a single embodiment can also be implemented in multiple embodiments separately or in any suitable sub-combination. Moreover, although features may be described above as acting in certain combinations and even initially claimed as such, one or more features from a claimed combination can in some cases be excised from the combination, and the claimed combination may be directed to a sub-combination or a variation of a sub-combination. Similarly, while operations are depicted in the drawings in a particular order, this should not be understood as requiring that such operations be performed in the particular order shown or in sequential order, or that all illustrated operations be performed, to achieve desirable results.

Only a few examples and implementations are disclosed. Variations, modifications, and enhancements to the described examples and implementations and other implementations can be made based on what is disclosed. 

What is claimed is:
 1. A wireless communication method for recovering information bits from a received signal, by performing iterative equalization, comprising: receiving, at an iterative equalizer, iteration inputs including a two-dimensional estimate of a wireless channel over which the received signal is received, a stream of received symbols, and at least one symbol estimate from a previous iteration; performing, based on the iteration inputs, an affine minimum mean-squared error (MMSE) equalization operation on the stream of received symbols to generate a first stream of estimated symbols; transforming, using a two-dimensional symplectic Fourier transform, the first stream of estimated symbols from a two-dimensional time-frequency grid to a second stream of estimated symbols in a two-dimensional delay-Doppler grid; and generating, based on the second stream of estimated symbols in the two-dimensional delay-Doppler grid, estimates of the information bits.
 2. The method of claim 1, wherein the iteration inputs further include an input autocorrelation matrix estimate from the previous iteration.
 3. The method of claim 1, further comprising: generating a plurality of likelihoods for the second stream of estimated symbols.
 4. The method of claim 3, wherein the plurality of likelihoods is based on a variance of an estimation error for the second stream of estimated symbols.
 5. The method of claim 3, wherein generating the estimates of the information bits comprises: deinterleaving the plurality of likelihoods; and performing a forward error correction (FEC) operation on an output of the deinterleaving.
 6. The method of claim 5, wherein the FEC operation is based on a convolutional code, a turbo code or a low-density parity-check (LDPC) code.
 7. The method of claim 1, wherein the two-dimensional symplectic Fourier transform is a symplectic fast Fourier transform (SFFT).
 8. A wireless transceiver apparatus comprising a processor, transmission and reception circuitry and a memory, the apparatus configured to perform a method for recovering information bits from a received signal, the method comprising: receiving, at an iterative equalizer, iteration inputs including a two-dimensional estimate of a wireless channel over which the received signal is received, a stream of received symbols, and at least one symbol estimate from a previous iteration; performing, based on the iteration inputs, an affine minimum mean-squared error (MMSE) equalization operation on the stream of received symbols to generate a first stream of estimated symbols; transforming, using a two-dimensional symplectic Fourier transform, the first stream of estimated symbols from a two-dimensional time-frequency grid to a second stream of estimated symbols in a two-dimensional delay-Doppler grid; and generating, based on the second stream of estimated symbols in the two-dimensional delay-Doppler grid, estimates of the information bits.
 9. The apparatus of claim 8, wherein the iteration inputs further include an input autocorrelation matrix estimate from the previous iteration.
 10. The apparatus of claim 8, further comprising: generating a plurality of likelihoods for the second stream of estimated symbols.
 11. The apparatus of claim 10, wherein the plurality of likelihoods is based on a variance of an estimation error for the second stream of estimated symbols.
 12. The apparatus of claim 10, wherein generating the estimates of the information bits comprises: deinterleaving the plurality of likelihoods; and performing a forward error correction (FEC) operation on an output of the deinterleaving, wherein the FEC operation is based on a convolutional code, a turbo code or a low-density parity-check (LDPC) code.
 13. The apparatus of claim 8, wherein the two-dimensional symplectic Fourier transform is a symplectic fast Fourier transform (SFFT).
 14. The apparatus of claim 8, wherein a number of iterations performed by the iterative equalizer is based on a total number of iterations, a time budget for recovering the information bits from the received signal, or a comparison of an improvement in successive iterations to a threshold.
 15. A non-transitory computer readable storage medium having instructions stored thereupon, the instructions, when executed by a processor, causing the processor to implement a method for recovering information bits from a received signal by performing iterative equalization, comprising: instructions for receiving, at an iterative equalizer, iteration inputs including a two-dimensional estimate of a wireless channel over which the received signal is received, a stream of received symbols, and at least one symbol estimate from a previous iteration; instructions for performing, based on the iteration inputs, an affine minimum mean-squared error (MMSE) equalization operation on the stream of received symbols to generate a first stream of estimated symbols; instructions for transforming, using a two-dimensional symplectic Fourier transform, the first stream of estimated symbols from a two-dimensional time-frequency grid to a second stream of estimated symbols in a two-dimensional delay-Doppler grid; and instructions for generating, based on the second stream of estimated symbols in the two-dimensional delay-Doppler grid, estimates of the information bits.
 16. The non-transitory computer readable storage medium of claim 15, wherein the iteration inputs further include an input autocorrelation matrix estimate from the previous iteration.
 17. The non-transitory computer readable storage medium of claim 15, further comprising: generating a plurality of likelihoods for the second stream of estimated symbols.
 18. The non-transitory computer readable storage medium of claim 17, wherein the plurality of likelihoods is based on a variance of an estimation error for the second stream of estimated symbols.
 19. The non-transitory computer readable storage medium of claim 17, wherein generating the estimates of the information bits comprises: deinterleaving the plurality of likelihoods; and performing an forward error correction (FEC) operation on an output of the deinterleaving, wherein the FEC operation is based on a convolutional code, a turbo code or a low-density parity-check (LDPC) code.
 20. The non-transitory computer readable storage medium of claim 15, wherein the two-dimensional symplectic Fourier transform is a symplectic fast Fourier transform (SFFT). 